home *** CD-ROM | disk | FTP | other *** search
/ IRIX Installation Tools & Overlays 2002 November / SGI IRIX Installation Tools & Overlays 2002 November - Disc 4.iso / dist / motif21_dev.idb / usr / Motif-2.1 / include / Xm / DropTransP.h.z / DropTransP.h
C/C++ Source or Header  |  2002-10-15  |  3KB  |  132 lines

  1. /* 
  2.  *  @OSF_COPYRIGHT@
  3.  *  COPYRIGHT NOTICE
  4.  *  Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc.
  5.  *  ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for
  6.  *  the full copyright text.
  7. */ 
  8. /* 
  9.  * HISTORY
  10. */ 
  11. /*   $XConsortium: DropTransP.h /main/11 1995/07/14 10:31:56 drk $ */
  12. /*
  13. *  (c) Copyright 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  14.  
  15. #ifndef _XmDropTransferP_h
  16. #define _XmDropTransferP_h
  17.  
  18. #include <Xm/DropTrans.h>
  19. #include <Xm/XmP.h>
  20.  
  21.  
  22. #ifdef __cplusplus
  23. extern "C" {
  24. #endif
  25.  
  26. /*  DropTransfer class structure  */
  27.  
  28. typedef Widget (*XmDropTransferStartTransferProc)(Widget,
  29.     ArgList, Cardinal);
  30. typedef void (*XmDropTransferAddTransferProc)(Widget,
  31.     XmDropTransferEntry, Cardinal);
  32.  
  33. typedef struct _XmDropTransferClassPart
  34. {
  35.     XmDropTransferStartTransferProc    start_drop_transfer;
  36.     XmDropTransferAddTransferProc    add_drop_transfer;
  37.     XtPointer extension;
  38.  
  39. #ifdef _SGIMOTIF
  40.     _SgClassExtension _SG_vendorExtension;
  41. #endif    
  42. } XmDropTransferClassPart;
  43.  
  44. /*  Full class record declaration */
  45.  
  46. typedef struct _XmDropTransferClassRec
  47. {
  48.    ObjectClassPart        object_class;
  49.    XmDropTransferClassPart dropTransfer_class;
  50. } XmDropTransferClassRec;
  51.  
  52. externalref XmDropTransferClassRec xmDropTransferClassRec;
  53.  
  54.  
  55. typedef struct _XmDropTransferListRec {
  56.     XmDropTransferEntry    transfer_list;
  57.     Cardinal        num_transfers;
  58. } XmDropTransferListRec, * XmDropTransferList;
  59.  
  60. #ifdef _SGIMOTIF    /* SGI drag and drop extension*/
  61.   /* this extension includes variables for suspending a drop */
  62. typedef struct __SG_XmDropTransferExtPart {
  63.         
  64.     Boolean         suspended;
  65.     Atom            save_selection;
  66.  
  67. } _SG_XmDropTransferExtPart;
  68.  
  69. typedef struct __SG_XmDropTransferExt {
  70.  
  71.     _SgInstanceExtensionRec common;   /* Stuff all instance rec's have */
  72.     _SG_XmDropTransferExtPart   rsrc;     /* Resources & instance var's */
  73.     
  74. } _SG_XmDropTransferExtRec, *_SG_XmDropTransferExt;
  75.  
  76. #define _SG_DropTransferPtr(w) \
  77. ((_SG_XmDropTransferExt)(((XmDropTransferObject)(w))->dropTransfer._SG_vendorExtension))
  78.  
  79. #endif /* _SGIMOTIF */
  80.  
  81.  
  82. /*  The DropTransfer instance record  */
  83.  
  84. typedef struct _XmDropTransferPart
  85. {
  86.     XmDropTransferEntry        drop_transfers;
  87.     Cardinal            num_drop_transfers;
  88.     Atom            selection;
  89.     Widget            dragContext;
  90.     Time            timestamp;
  91.     Boolean            incremental;
  92.     Window            source_window;
  93.     unsigned int        tag;
  94.     XtSelectionCallbackProc     transfer_callback;
  95.     unsigned char        transfer_status;
  96.  
  97.     Atom             motif_drop_atom;
  98.     
  99.     XmDropTransferList        drop_transfer_lists;
  100.     Cardinal            num_drop_transfer_lists;
  101.     Cardinal            cur_drop_transfer_list;
  102.     Cardinal            cur_xfer;
  103.     Atom *            cur_targets;
  104.     XtPointer *            cur_client_data;
  105.  
  106. #ifdef _SGIMOTIF
  107.     _SG_XmDropTransferExt _SG_vendorExtension;
  108. #endif    
  109. } XmDropTransferPart;
  110.  
  111. /*  Full instance record declaration  */
  112.  
  113. typedef struct _XmDropTransferRec
  114. {
  115.     ObjectPart    object;
  116.     XmDropTransferPart dropTransfer;
  117. } XmDropTransferRec;
  118.  
  119.  
  120. /********    Private Function Declarations    ********/
  121.  
  122.  
  123. /********    End Private Function Declarations    ********/
  124.  
  125.  
  126. #ifdef __cplusplus
  127. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  128. #endif
  129.  
  130. #endif /* _XmDropTransferP_h */
  131. /* DON'T ADD ANYTHING AFTER THIS #endif */
  132.